home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Light ROM 3
/
Light ROM 3 - Disc 2.iso
/
programs
/
amiga
/
macromkr
/
adpromac.lha
/
$THUMBNAIL.adpro
< prev
Wrap
Text File
|
1993-12-03
|
4KB
|
198 lines
/*************************************************************************
THUMBNAIL CREATOR
VER. 2.0 UPDATE 5/12/93
*************************************************************************/
trace all
OPTIONS RESULTS
NL = '0A'X
SIGNAL_ON_BREAK_C
address command 'setenv ADPRODIR RAM:'
address command 'makedir RAM:Savers2'
address command 'makedir RAM:Loaders2'
address command 'makedir RAM:Operators2'
address command 'copy ADPRO:Loaders2/(universal|iff|jpeg|backdrop) RAM:Loaders2'
address command 'copy ADPRO:Savers2/(iff|jpeg) RAM:Savers2'
address command 'copy ADPRO:Operators2/(scale|text_visual|color_to_grey|crop_image) RAM:Operators2'
ADDRESS "ADPro"
STRING = '"MAKE A THUMBNAILS?"'
OKAY2 STRING
IF RC = 0 THEN EXIT
LFORMAT "UNIVERSAL"
ADPRO_TO_FRONT
OD = "SYS:THUMBNAILS/" /* CHANGE THE DH0: IN THIS LINE TO THE NAME OF YOUR HARD-DRIVE */
/*CALL OPT*/
TYPE = 'C'
GETFN:
GETSTRING 'SAVE_FILE_NAME?'
FFNAME = ADPRO_RESULT
IF RC ~= 0 THEN SIGNAL GETFN
GETF:
GETFILES '"SHIFT FOR MULTI FILES"'
IF RC ~= 0 THEN SIGNAL GETF
STRING = 'OK TO PROCEED'
OKAY2 STRING
IF RC =0 THEN EXIT
LIST = ADPRO_RESULT
COUNT = WORDS(ADPRO_RESULT)
I = 1
/* LOAD, TITLE & SCALE IMAGES */
CALL GETPATH
TSWITCH = 0
DO WHILE (I <= COUNT)
CF = WORD(LIST,I)
LOAD CF
XSIZE
SIZE = ADPRO_RESULT
IF TSWITCH = 0 THEN CALL SETTEXT
/* SCALE DOWN */
ABS_SCALE 128 80
OPERATOR 'TEXT_VISUAL' SET_FONT_SIZE 11
CALL CLEAN(CF)
OPERATOR 'TEXT_VISUAL' SET_TEXT_STYLE 2
OPERATOR 'TEXT_VISUAL' RENDER_TYPE OUTLINE
OPERATOR 'TEXT_VISUAL' SET_COLORS 0 0 0
OPERATOR 'TEXT_VISUAL' DRAW
OPERATOR 'TEXT_VISUAL' RENDER_TYPE MIX
OPERATOR 'TEXT_VISUAL' SET_TEXT_STYLE 0
OPERATOR 'TEXT_VISUAL' SET_COLORS 255 255 255
OPERATOR 'TEXT_VISUAL' CENTER_XOFFSET
OPERATOR 'TEXT_VISUAL' DRAW
OPERATOR 'CROP_IMAGE' 128 80 0 0
SF = "RAM:TEMP"||I
SFORMAT "JPEG"
SAVE SF RAW
I = I + 1
END
I = 1
J = 1
F = 1
DO WHILE (I <= COUNT)
XPOS = 0
YPOS = 0
K = 1
CALL BACKDROP
DO WHILE (J <= 25) & (I <= COUNT)
DO WHILE (K <= 5) & (I <= COUNT)
CF = 'RAM:TEMP'||I
X = 128 * XPOS
Y = 80 * YPOS
LOAD CF X Y 100
XPOS = XPOS + 1
K = K + 1
J = J + 1
ADDRESS COMMAND 'DELETE RAM:TEMP'I
ADDRESS "ADPro"
I = I + 1
END
YPOS = YPOS + 1
K = 1
XPOS = 0
END
J = 1
IF TYPE = 'C' THEN CALL COLOR
ELSE IF TYPE = 'G' THEN CALL GRAY
END
ADDRESS COMMAND 'copy SYS:THUMBNAILS/STORE/blank.info SYS:ThumbnailS/'||FFNAME||'.info'
address command 'delete ram:operators2 ALL'
address command 'delete ram:loaders2 ALL'
address command 'delete ram:savers2 ALL'
EXIT
GRAY:
OPERATOR "COLOR_TO_GRAY"
SFORMAT "IFF"
DITHER 6
DITHER_AMOUNT
RENDER_TYPE 16
SCREEN_TYPE 3
EXECUTE
IF COUNT <= 25 THEN SF = OD||FFNAME
ELSE SF = OD||FFNAME||F
F = F + 1
SAVE SF "IMAGE"
RETURN
COLOR:
SFORMAT "IFF"
DITHER 6
DITHER_AMOUNT 25
RENDER_TYPE HAM8
SCREEN_TYPE 3
EXECUTE
IF COUNT <= 25 THEN SF = OD||FFNAME
ELSE SF = OD||FFNAME||F
F = F + 1
SAVE SF "IMAGE"
RETURN
BACKDROP:
LFORMAT 'BACKDROP'
LOAD "X" 640 400 COLOR 0 0 0
IF RC ~= 0 THEN EXIT
LFORMAT 'UNIVERSAL'
RETURN
Clean: procedure /* Extract file name from full file specification */
ARG fullfile
c = lastpos("/",fullfile)
if c = 0 then c = lastpos(":",fullfile)
IF COUNT > 1 THEN WorkingFile = LEFT(WorkingFile,(LENGTH(WorkingFile)-1))
OPERATOR 'TEXT_VISUAL' STRING substr(fullfile,c+1)
RETURN
GETPATH:
PATH = WORD(LIST,1)
C = LASTPOS("/",PATH)
IF C = 0 THEN C = LASTPOS(":",PATH)
OrigDir = left(PATH,C)
RETURN
OPT:
STRING = ' TYPE OF THUMBNAIL' || NL
STRING = STRING || ' <OK> FOR B & W' || NL
STRING = STRING || ' <CANCEL> FOR COLOR '
OKAY2 STRING
IF RC ~= 0 THEN TYPE = 'G'
ELSE TYPE = 'C'
RETURN
SETTEXT:
OPERATOR 'TEXT_VISUAL' FONT_DIR "SYS:fonts"
OPERATOR 'TEXT_VISUAL' FONT_NAME "TOPAZ"
OPERATOR 'TEXT_VISUAL' SET_YOFFSET 5
OPERATOR 'TEXT_VISUAL' TEXT_HANDLE LEFT
OPERATOR 'TEXT_VISUAL' SET_RENDER 100
OPERATOR 'TEXT_VISUAL' SET_SATURATION 100
OPERATOR 'TEXT_VISUAL' SET_TINT 100
OPERATOR 'TEXT_VISUAL' EMBOSS_DIRECTION OFF
OPERATOR 'TEXT_VISUAL' CENTER_XOFFSET
TSWITCH = 1
RETURN
BREAK_C:
EXIT